#include "jogador.h"

Jogador::Jogador()
{
	iniciar();

	sprite.initialize("sources/images/jogador.bmp", 90, 36, 5);
}

Jogador::~Jogador()
{
}

void Jogador::iniciar() 
{
	frameAtual = 0;
	speed = 10;
	
	rect.x = 100;
	rect.y = 100;
	rect.w = 90;
	rect.h = 36;
	
	state = 1;
}

void Jogador::desenhar(SDL_Surface *screen)
{
	sprite.draw(rect.x, rect.y, frameAtual, screen);
	frameAtual = sprite.nextFrame(frameAtual);
}

void Jogador::moverCima()
{
	if (rect.y - speed < 0)
		rect.y = 0;
	else
		rect.y -= speed;
}

void Jogador::moverBaixo()
{
	if (rect.y + speed + 36 > 600)
		rect.y = 600 - 36;
	else
		rect.y += speed;
}

void Jogador::moverFrente()
{
	if (rect.x + speed + 90 > 800)
		rect.x = 800 - 90;
	else
		rect.x += speed;
}

void Jogador::moverTras()
{
	if (rect.x - speed < 0)
		rect.x = 0;
	else
		rect.x -= speed;
}

Missil* Jogador::atirar()
{
	Missil* m = new Missil();
	m->iniciar(rect.x + rect.w - 30, rect.y + rect.h - 10);
	
	return &(*m);
}